
package com.dhcc.bpm.modules.log.vo;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.NullSerializer;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel;
import lombok.Data;

import java.util.List;

/**
 * @ClassName AppApiViewVo.class
 * @Description 应用接口统计 视图实体类
 * @Author xiaFaYu
 * @Date 2019-12-16 14:16
 * @Version V1.0
 * @Copyright: 2020 东华软件 . All rights reserved.
 */
@Data
@ApiModel(value = "AppApiViewVo", description = "应用接口列表")
public class AppApiViewVo {
    private static final long serialVersionUID = 1L;
    /**
     * 请求类型
     */
    private String type;
    /**
     * 开始日期
     */
    private String begDate;
    /**
     * 结束日期
     */
    private String endDate;
    /**
     * 请求日期
     */
    private String requestDate;
    /**
     * 请求日期
     */
    private String requestTime;
    /**
     * 应用(渠道)Id
     */
    private String appId;
    /**
     * 接口Id
     */
    private String apiId;

    private List<String> apiCodes;
    /**
     * 机构Code
     */
    private String orgaCode;
    /**
     * 机构Id
     */
    private String id;
    /**
     * 产品Id
     */
    private String productId;
    /**
     * 机构名称
     */
    private String orgaName;
    /**
     * 应用名称
     */
    private String appName; // 应用名称
    /**
     * 接口名称
     */
    private String apiName;
    /**
     * 环境（dev--沙箱测试 test--生产）
     */
    private String env;
    /**
     * 查询维度类型
     */
    private String dateType;
    /**
     * 响应次数
     */
    @JsonSerialize(using = ToStringSerializer.class, nullsUsing = NullSerializer.class)
    private Long requestNum;
    /**
     * 成功次数
     */
    @JsonSerialize(using = ToStringSerializer.class, nullsUsing = NullSerializer.class)
    private Long successNum;
    /**
     * 失败次数
     */
    @JsonSerialize(using = ToStringSerializer.class, nullsUsing = NullSerializer.class)
    private Long failRequestNum;
    /**
     * 失败率
     */
    private String failRate;
    /**
     * 平均响应时间
     */
    @JsonSerialize(using = ToStringSerializer.class, nullsUsing = NullSerializer.class)
    private Double responseTime;
    /**
     * 请求耗时
     */
    private String requestConsume;
    /**
     * 总行数
     */
    @JsonSerialize(using = ToStringSerializer.class, nullsUsing = NullSerializer.class)
    private Long lineNum;
    /**
     * 创建时间
     */
    private String createTime;
    /**
     * 月份
     */
    private String monthDate;
    /**
     * 应用编号不为空标志
     */
    private String appIdNotNull;
    /**
     * 开始时间
     */
    private String startTime;
    /**
     * 结束时间
     */
    private String endTime;
    /**
     * 时间类型
     */
    private String timeType;

    private int isFrom; //1 ---表示首页的查询

}
